home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magic Disk 64
/
Magic_Disk_64_95-08_1995_-_de_Side_B.d64
/
sprite-source #4
< prev
next >
Wrap
Text File
|
2023-02-26
|
5KB
|
252 lines
;---------------------------------------
;
; - S P R I T E S -
;
; Source-File #4:
;
; '15 Jumping Smilies'
;
; by Hannes Sommer
;
; (c) 1993 CP-Verlag Gmbh
;
;---------------------------------------
v = 53248
y = 832
x = 848
xhi = 864
b = 880
c = 896
set = 912
ymove = 928
*= $0840
.byte 0,255,0,3,255,192
.byte 15,255,240,31,255,248
.byte 63,255,252,63,255,252
.byte 127,189,254,127,189,254
.byte 255,189,255,255,255,255
.byte 255,255,255,247,255,239
.byte 251,255,223,124,126,62
.byte 127,129,254,63,255,252
.byte 63,255,252,31,255,248
.byte 15,255,240,3,255,192
.byte 0,255,0,0
lda #255 ;Initialisierung!
sta v+21
lda #0
sta i0+1
sta ii0+1
sta $d021
ldx #63
init sta 704,x ;Sprite #11 clear!
dex
bpl init
ldx #0
i0 lda #0
clc
adc #24
sta i0+1
sta x,x
bcc ii0
inc ii0+1
ii0 lda #0 ;Sprite-Paramater
sta xhi,x ;setzen...
lda #11
sta b,x
lda cols,x
sta c,x
inx
cpx #15
bne i0
sei ;IRQ-Setup!
lda #<irq
sta $0314
lda #>irq
sta $0315
lda #129
sta $d01a
lda #27
sta $d011
lda #5
sta $d012
cli
ldx #0
i1 lda text,x
beq i2
jsr $ffd2
inx
bne i1
i2
end rts
text .byte 13,18
.text "15 jumping smilies "
.text "aktiviert."
.byte 146,13,13,0
;---------------------------------------
; I R Q
;---------------------------------------
irq lda $d019
sta $d019
bmi t1
lda $dc0d
cli
jmp $ea31
t1
lda $d011
bmi t1
lda #27
sta $d011
ldx #14 ;** Multiplexer! **
t2 lda $d012
cmp #250
bcs t10
ldy set,x
bne t3
clc
adc #1
cmp y,x
bcs t3
adc #20
cmp y,x
bcs t4
t3 dex
bpl t2
bmi t2-2
t4 lda #0
and #7
tay
lda b,x
sta 2040,y
lda c,x
sta v+39,y
lda xhi,x
bne t5
lda v+16
and und,y
sta v+16
jmp t6
t5 lda v+16
ora oder,y
sta v+16
t6 tya
asl a
tay
lda y,x
sta v+1,y
lda x,x
sta v,y
inc t4+1
inc set,x
jmp t3
t10
lda #19 ;Border oeffnen!
sta $d011
ldx #14 ;Zuruecksetzen der
lda #0 ;SET-Flags!
sta t4+1
t11 sta set,x
dex
bpl t11
inc ypoint ;Y-Jump-Pointer
lda ypoint ;erhoehen...
cmp #120
bne tt11
lda #0
sta ypoint
tt11 sta t12+1
ldx #0
t12 ldy #0
lda ytab,y ;Y-Koordinaten
clc ;schreiben
adc #24
sta y,x
lda t12+1
clc
adc #8
cmp #120
bcc t13
sec
sbc #120
t13 sta t12+1
dec x,x ;X-Bewegung...
lda x,x
cmp #255
bne t15
lda xhi,x
bne t14
lda #1
sta xhi,x
lda #103
sta x,x
lda #33
sta b,x
bne t15
t14 lda #0
sta xhi,x
t15
inx
cpx #15
bne t12
irqend jmp $ea81
oder .byte 1,2,4,8,16,32,64,128
und .byte 254,253,251,247
.byte 239,223,191,127
cols .byte 7,10,8,9,2,4,6
.byte 14,3,1,15,12,11,5,13
ypoint .byte 0
ytab .byte 0,0,0,0
.byte 1,1,1,2,2,2,3,3
.byte 4,4,5,6,7,8,9,10
.byte 12,14,16,18,20,22,25,28
.byte 31,34,37,40,44,48,52,56
.byte 60,64,69,74,79,84,89,94
.byte 100,106,112,118
.byte 124,130,137,144
.byte 151,158,165,173,181
.byte 189,197,205,213,221,229
.byte 221,213,205,197,189
.byte 181,173,165,158,151
.byte 144,137,130,124
.byte 118,112,106,100
.byte 94,89,84,79,74,69,64,60
.byte 56,52,48,44,40,37,34,31
.byte 28,25,22,20,18,16,14,12
.byte 10,9,8,7,6,5,4,4
.byte 3,3,2,2,2,1,1,1